<?php

class Socios_Model extends Model {

  function Socios_Model(){
    parent::Model();
  }
	
      /** 
       * function save_form()
       *
       * insert form data
       * @param $socio_data - array
       * @param $marker_data - array
       * @param $socio_marker_data - array
       * @return Bool - TRUE or FALSE
       */
	function save_form($socio_data, $marker_data, $socio_marker_data){
		/*
		 * FASE 1: usamos los markers existentes sin asociacion y agregamos el socio correspondiente, solo GRATIS!
		 * FASE 2: integramos la asociacion al listado x categoria (/negocios, /interes) y a la specific item, preguntando
		 * 			si no esta asociado a nadie mostramos un miniformulario para llenar los datos 
		 * 
		 * --->Ud esta aqui<---
		 * 
		 * FASE 3: habilitamos las opciones pagas, con el loader de las imagenes
		 * FASE 4: habilitamos la carga de un nuevo marker y las opciones en los listado y specific item para agregar uno nuevo
		 */
		
		$new_socio     = false;
		$new_marker    = false;	//FASE 1
		$is_associated = false; //FASE 1
		$socio_id;
		$marker_id;

		/*
		//fill default data
		$marker_data['marker_cat']=4;	//NEGOCIO
		//$marker_data['name'] = trim($marker_data['marker_name']);
		$marker_data['name'] = str_replace(' ', '-', trim($marker_data['marker_name']));
		unset($marker_data['marker_name']);
		*/
		   
		/*
		 to remove inner whitespaces try:
		 $str = str_replace(' ','',$str);
		 implode('-', explode(' ', $str));
		 $foo = preg_replace( '/\s+/', ' ', $foo );
		 */		
		/*
		$marker_data['address'] = trim($marker_data['marker_address']);
		unset($marker_data['marker_address']);
		
		$marker_data['city'] = trim($marker_data['marker_city']);
		unset($marker_data['marker_city']);
		
		$marker_data['description'] = trim($marker_data['marker_description']);
		unset($marker_data['marker_description']);		
		*/
			
		$socio_marker_data['fecha_inicio'] = date('Y-m-d h:i:s');
						
		//-----SOCIO----------------------------------
		$socio_data['email'] 			= mysql_real_escape_string(trim($socio_data['email']));		
		
		$socio_data['fecha_asociacion'] = date('Y-m-d h:i:s');
		$query = $this->db->query("SELECT *
									FROM  socio
									WHERE socio.email = '".$socio_data['email']."'"
									);						
		$socio = $query->row_array();				
		
		if(empty($socio)){
			//the email doesn't exists
			$new_socio = true;
		}else{
			//we get the socio ID 
			$socio_id = $socio['id_socio'];
		}
		//------MARKER------------------------------------
		$marker_id = mysql_real_escape_string($marker_data['id_marker']);
		/*
		$query = $this->db->query("SELECT *
									FROM marker
									WHERE marker.name like '%".$marker_data['name']."%' AND
											marker.city like '%".$marker_data['city']."%' AND
											marker.marker_cat = 4
									");		
		$marker = $query->row_array();		
		if(empty($marker)){
			$new_marker = true;
		}else{
			$marker_id = $marker['id_marker'];
		}
		*/
		//------SOCIO-MARKER---------------------------------------		
		//if(!new_marker){						
			//check if already exists a relationship
			$query = $this->db->query("SELECT *
									FROM socio_marker
									WHERE id_marker = ".$marker_id
									);		
			$socio_marker = $query->row_array();
			
			//echo "Checkeando....";
			//print_r($socio_marker);
			
			if(!empty($socio_marker)){
				//already exists a partner :(
			    $is_associated = true;
			    //echo "YA ASOCIADO!!!";
			}//else{echo "SIN ASOCIAR!!!";}
			//die;
		//}
			
		
		//==============================================================
		//START PROCCESS
		if($new_socio){
			if($new_marker){
				/*
				echo "//add user
				//add marker
				//add the association";		
				
				$this->db->insert('socio', $socio_data);
				$socio_id  = mysql_insert_id();
				
				$this->db->insert('marker', $marker_data);
				$marker_id = mysql_insert_id();				
				
				$socio_marker_data['id_socio']     = $socio_id;
				$socio_marker_data['id_marker']    = $marker_id;
				$this->db->insert('socio-marker', $socio_marker_data);
				*/
			}else{
				if(!$is_associated){	//FASE 1
					/*echo "//add user
					//use $marker_id
					//add the association";*/
					
					$this->db->insert('socio', $socio_data);
					if($this->db->_error_message()){
						return FALSE;
					}					
					$socio_id  = mysql_insert_id();
					//echo "added user $socio_id";
					
					$socio_marker_data['id_socio']     = $socio_id;
					$socio_marker_data['id_marker']    = $marker_id;
					$this->db->insert('socio_marker', $socio_marker_data);
					if($this->db->_error_message()){
						return FALSE;
					}
					//echo "added relationship";
					
				}else{
					//echo "//PROBLEM: the marker is already associated to ".$socio_marker['id_socio'];
					return FALSE;
				}
			}
		}else{
			//old partner
			if($new_marker){
				/*
				echo "//use $socio_id
				//add marker
				//add association";
				
				$this->db->insert('marker', $marker_data);
				$marker_id = mysql_insert_id();		

				$socio_marker_data['id_socio']     = $socio_id;
				$socio_marker_data['id_marker']    = $marker_id;
				$this->db->insert('socio-marker', $socio_marker_data);
				*/				
			} else{
				if(!$is_associated){	//FASE 1
					/*echo "//use $socio_id
					//use $marker_id
					//add association";*/		

					$socio_marker_data['id_socio']     = $socio_id;
					$socio_marker_data['id_marker']    = $marker_id;
					$this->db->insert('socio_marker', $socio_marker_data);		
					if($this->db->_error_message()){
						return FALSE;
					}			
				}else{
					//echo "//PROBLEM: the marker is already associated to $socio_id";
					return FALSE;
				}
			}
		}
		/*	
		echo "==============================================================================";
		print_r("Socio Nuevo: ");var_dump($new_socio);
		print_r($socio_id);
		echo "\n\r------";
		print_r("Marker nuevo: ");var_dump($new_marker);
		print_r($marker_id);
		echo "\n\r------";
		print_r("Esta asociado: ");var_dump($is_associated);
		*/
		
		$query = $this->db->query("SELECT *
									FROM marker
									WHERE id_marker = ".$marker_id
							);
		$marker_info = $query->row_array();		
		
		//we send mails
		//send mail to ADMIN
		$body_mail = "
		<!-- PREPARE MAIL INFO -->
		<style>			
			ul li {list-style: none;}
			.separator{
				width: 100%;
				border-bottom: 1px solid #dddddd;
				margin: 5px 0px;
			}							
		</style>		
		<figure>
			<img id='logo' alt='ConocePunta' src='http://www.conocepunta.com.ar/images/cp-logo2.png'>
		</figure>
		<p>Realizado en - <a href='http://www.conocepunta.com.ar'>www.conocepunta.com.ar</a> el ".$socio_data['fecha_asociacion']."</p>
		<ul>
			<li><strong>Nombre: </strong>".$socio_data['name']."</li>
			<li><strong>Email: </strong>".$socio_data['email']."</li>
			<li><strong>Telefono: </strong>".$socio_data['telephone']."</li>
			<li><strong>Plan: </strong>GRATIS</li>
			<li><strong>Negocio: </strong>ID-".$marker_id.": ".$marker_info['name']."</li>		
			<li><strong>Direccion: </strong>".$marker_info['address']."</li>
			<li><strong>Ciudad: </strong>".$marker_info['city']."</li>
			<li><strong>Descripcion: </strong>".$marker_info['description']."</li>
		</ul>
		<h2>No te olvides de mantener actualizada la informacion de tu negocio. * </h2> 
		<h4>No dejes de visitar el sitio para enterarte todas las novedades de Punta Alta y la zona.</h4>		
		<p>Contactate con nosotros via:</p>
		<ul>
        	<li><a href='http://www.facebook.com/pages/Conoce-Punta/145094618228' target='_new'>Facebook</a></li>
            <li><a href='http://www.twitter.com/conocepunta' target='_new'>Twitter</a></li>
            <li><a href='mailto:conocepunta@gmail.com'>conocepunta@gmail.com</a></li>		
		</ul>
		<p>Atte. El equipo de ConocePunta.</p>			
		</br>
		<p>*La actualizacion de la informacion tiene un costo fijo de $10.</p>
		";
		 
		//echo $body_mail;
		
		
		$mail = new PHPMailer();
		// REMITENTE
		$mail->From       = "conocepunta@gmail.com";
		$mail->FromName   = "ConocePunta";
		// ASUNTO
		$mail->Subject    = "[Socio] ConocePunta";
		// MENSAJE OPCIONAL
		$mail->AltBody    = "Para ver este mensaje, active la compatibilidad con correos HTML.";
		// DESTINATARIOS
		//user
		$mail->AddAddress('conocepunta@gmail.com', 'Admin');
		//copy mails
		$mail->MsgHTML($body_mail);
		$mail->Send();
		
		//mail to user
		$body_mail = "
		<style>
			ul li {list-style: none;}	
			.separator{
				width: 100%;
				border-bottom: 1px solid #dddddd;
				margin: 5px 0px;
			}						
		</style>		
		<!-- PREPARE MAIL INFO -->
		<figure>
			<img id='logo' alt='ConocePunta' src='http://www.conocepunta.com.ar/images/cp-logo2.png'>
		</figure>
		<p>Realizado en - <a href='http://www.conocepunta.com.ar'>www.conocepunta.com.ar</a> el ".$socio_data['fecha_asociacion']."</p>
		<h2>Gracias por Asociarte y no dejes de visitar el sitio para enterarte todas las novedades de Punta Alta y la zona!</h2>
		<p class='separator'></p>
		<ul>
			<li>Tus datos son:</li>
			<li><strong>Nombre: </strong>".$socio_data['name']."</li>
			<li><strong>Email: </strong>".$socio_data['email']."</li>
			<li><strong>Telefono: </strong>".$socio_data['telephone']."</li>
			<li><strong>Plan: </strong>GRATIS</li>
			<li><strong>Negocio: </strong>".$marker_info['name']."</li>	
			<li><strong>Direccion: </strong>".$marker_info['address']."</li>
			<li><strong>Ciudad: </strong>".$marker_info['city']."</li>
			<li><strong>Descripcion: </strong>".$marker_info['description']."</li>			
		</ul>
		<p class='separator'></p>
		<h2>No te olvides de mantener actualizada la informacion de tu negocio.*</h2> 
		<p>Contactate con nosotros via:</p>
		<ul>
        	<li><a href='http://www.facebook.com/pages/Conoce-Punta/145094618228' target='_new'>Facebook</a></li>
            <li><a href='http://www.twitter.com/conocepunta' target='_new'>Twitter</a></li>
            <li><a href='mailto:conocepunta@gmail.com'>conocepunta@gmail.com</a></li>		
		</ul>	
		<p>Atte. El equipo de ConocePunta.</p>
		</br>
		<p>*La actualizacion de la informacion tiene un costo fijo de $10.</p>
		";
		
		
		//echo $body_mail; die; 
		
		$mail->ClearAddresses();
		//send feedback
		$mail->Subject    = "[ConocePunta] Ya estas asociado!";
		// MENSAJE OPCIONAL
		$mail->AltBody    = "Para ver este mensaje, active la compatibilidad con correos HTML.";
		// DESTINATARIOS
		//user
		$mail->AddAddress($socio_data['email'], $socio_data['name']);
		//copy mails
		$mail->MsgHTML($body_mail);
		$mail->Send();		
		
		return true;
	}
}
?>